package com.excesys.exsecs.admin.api.entity;

import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 系统页面设计
 *
 * @author lxc
 * @date 2024-11-18 14:06:29
 */
@Data
@TableName("sys_page_design")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "系统页面设计")
public class SysPageDesign extends Model<SysPageDesign> {


	/**
	* 主键id
	*/
    @TableId(type = IdType.AUTO)
    @Schema(description="主键id")
    private Integer id;

	/**
	* 页面url
	*/
    @Schema(description="页面url")
    private String pageUrl;

	/**
	* 描述
	*/
    @Schema(description="描述")
    private String description;

	/**
	 * 关联组件list
	 */
	@Schema(description="关联组件list")
	@TableField(exist = false)
	private List<JSONObject> relList;

	/**
	 * 组件名称，以逗号join
	 */
	@Schema(description="描述")
	@TableField(exist = false)
	private String compNames;

	/**
	* 创建人
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建人")
    private String createBy;

	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建时间")
    private LocalDateTime createTime;

	/**
	* 修改人
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改人")
    private String updateBy;

	/**
	* 修改时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改时间")
    private LocalDateTime updateTime;
}